package jp.sourceforge.talisman.mds.distance;

/*
 * $Id: ClusterDistanceCalculator.java,v 1.1 2009/09/12 05:06:08 weiwei Exp $
 */

import jp.sourceforge.talisman.mds.cluster.Cluster;

/**
 * 
 * @author Haruaki Tamada
 * @version $Revision: 1.1 $ 
 */
public interface ClusterDistanceCalculator{
    public ItemDistanceCalculator getItemDistanceCalculator();

    public void setItemDistanceCalculator(ItemDistanceAlgorithm algorithm);

    public void setItemDistanceCalculator(ItemDistanceCalculator idc);

    public double calculate(Cluster c1, Cluster c2);

    public ClusterDistanceAlgorithm getAlgorithm();

    public double update(Cluster ci, Cluster cj, Cluster ck, double dij, double dik, double djk);
}
